<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<html xmlns:u="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:s="http://com.ss.logistica/jsf"
	xmlns:p="http://primefaces.org/ui" xmlns="http://www.w3.org/1999/xhtml">

<body>
	<u:composition template="/pages/layout/pageLayout.xhtml">
		<u:define name="body">
			<h:form id="filtroForm">
				<p:panel id="panelFiltro"
					rendered="#{!diagramacionDiariaController.addEdit}">
					<h:panelGrid columns="7">
						<h:outputText value="Fecha" />
						<p:calendar
							value="#{diagramacionDiariaController.diagramacionDiariaQuery.fecha}"
							mode="popup" showOn="button" locale="es"
							pattern="#{msgs.common_inputDateFormat}" />

						<p:commandButton value="Consultar"
							actionListener="#{diagramacionDiariaController.query}"
							update="form" style="font-size:10px;">
						</p:commandButton>
					</h:panelGrid>
				</p:panel>
			</h:form>

			<h:form id="form">
				<p:growl id="messages" life="5000" />
				<p:dataTable id="dataTable" var="diagramacionDiaria"
					value="#{diagramacionDiariaController.lazyDM}" paginator="true"
					rows="10"
					paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
					rowsPerPageTemplate="10,15,20"
					rendered="#{!diagramacionDiariaController.addEdit}"
					emptyMessage="No se encontraron registros" dynamic="true">

					<f:facet name="header">
						<h:outputText value="#{msgs.admDiagramacionDiaria_title}" />
					</f:facet>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Fecha" />
						</f:facet>
						<h:outputText value="#{diagramacionDiaria.fecha}">
							<f:convertDateTime pattern="#{msgs.common_inputDateFormat}"
								timeZone="#{msgs.common_timeZone}" />
						</h:outputText>
					</p:column>

					<p:column>
						<f:facet name="header">
							<h:outputText value="Opciones" />
						</f:facet>
						<h:panelGrid columns="3">
							<p:commandLink
								actionListener="#{diagramacionDiariaController.edit}"
								update="form,filtroForm">
								<h:graphicImage url="/resource/images/edit.gif"
									title="Modificar" style="border:0px" />
							</p:commandLink>
							<p:commandLink
								actionListener="#{diagramacionDiariaController.toPDF}"
								ajax="false">
								<h:graphicImage url="/resource/images/pdf.gif" title="A PDF"
									style="border:0px" />
							</p:commandLink>

							<h:commandLink
								actionListener="#{diagramacionDiariaController.delete}"
								onclick="return confirm('¿Está seguro de eliminar el registro?');">
								<h:graphicImage url="/resource/images/delete.gif"
									title="Eliminar" style="border:0px" />
							</h:commandLink>
						</h:panelGrid>
					</p:column>

					<f:facet name="footer">
						<h:panelGrid columns="2">
							<p:commandButton value="Agregar"
								actionListener="#{diagramacionDiariaController.add}"
								update="form,filtroForm,dataTableSucursal"
								oncomplete="tabView.select(0); tableWidgetVar.getPaginator().setPage(0);" />
						</h:panelGrid>
					</f:facet>
				</p:dataTable>

				<h:panelGrid id="panel" columns="1"
					rendered="#{diagramacionDiariaController.addEdit}">
					<p:tabView widgetVar="tabView">
						<p:tab title="Datos Principales">
							<p:focus for="fechaC" />
							<h:panelGrid columns="1">
								<h:panelGrid columns="2">
									<h:outputText value="Fecha" />
									<p:calendar id="fechaC"
										value="#{diagramacionDiariaController.diagramacionDiariaView.fecha}"
										mode="popup" showOn="button" locale="es"
										pattern="#{msgs.common_inputDateFormat}"
										readOnlyInputText="true">
										<p:ajax event="dateSelect"
											listener="#{diagramacionDiariaController.handleDateSelect}" />
									</p:calendar>
								</h:panelGrid>

								<p:dataTable id="dataTableSucursal" var="detalleSucursal"
									value="#{diagramacionDiariaController.diagramacionDiariaView.detalleSucursalViewList}"
									emptyMessage="Sin detalles" dynamic="true" paginator="true"
									rows="5"
									paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
									rowsPerPageTemplate="5,10,15,50" widgetVar="tableWidgetVar">
									<p:column>
										<f:facet name="header">
											<h:outputText value="Sucursal" />
										</f:facet>
										<h:panelGrid columns="2" border="3">
											<h:outputText
												value="#{detalleSucursal.sucursalCoto.numeroSucursal}">
											</h:outputText>

											<p:commandLink>
												<h:graphicImage url="/resource/images/add.gif"
													title="Agregar fila" style="border:0px" />
												<f:setPropertyActionListener value="#{detalleSucursal}"
													target="#{diagramacionDiariaController.detalleSucursalViewAdd}" />
											</p:commandLink>
										</h:panelGrid>
									</p:column>

									<p:column>
										<f:facet name="header">
											<h:outputText value="Móviles asignados" />
										</f:facet>
										<p:dataTable id="dataTableSucursal" var="detalleAsignacion"
											value="#{detalleSucursal.detalleAsignacionViewList}"
											paginator="false" emptyMessage="Sin detalles" dynamic="true">

											<p:column>
												<f:facet name="header">
													<h:outputText value="Horario entrada" />
												</f:facet>
												<p:calendar id="horarioEntradaC"
													value="#{detalleAsignacion.horarioEntrada}" mode="popup"
													showOn="button" locale="es"
													pattern="#{msgs.common_timeOnly}" timeOnly="true"
													readOnlyInputText="true" stepMinute="30">
												</p:calendar>
											</p:column>

											<p:column>
												<f:facet name="header">
													<h:outputText value="Móvil/Flete" />
												</f:facet>
												<h:panelGrid columns="2" border="3">
													<h:outputText value="#{detalleAsignacion.label}" />

													<h:panelGrid columns="3" border="3">
														<p:commandLink
															oncomplete="movilDialog.show(); movilDialog.initPosition()"
															actionListener="#{diagramacionDiariaController.selectFleteMovil}"
															update="movilDialogID">
															<h:graphicImage url="/resource/images/find.gif"
																title="Elegir móvil" style="border:0px" />
															<f:setPropertyActionListener value="#{detalleAsignacion}"
																target="#{diagramacionDiariaController.detalleAsignacionView}" />
															<f:setPropertyActionListener value="#{detalleSucursal}"
																target="#{diagramacionDiariaController.detalleSucursalView}" />
														</p:commandLink>

														<p:commandLink
															oncomplete="fleteDialog.show(); fleteDialog.initPosition()"
															actionListener="#{diagramacionDiariaController.selectFleteMovil}">
															<h:graphicImage url="/resource/images/find.gif"
																title="Elegir flete" style="border:0px" />
															<f:setPropertyActionListener value="#{detalleAsignacion}"
																target="#{diagramacionDiariaController.detalleAsignacionView}" />
															<f:setPropertyActionListener value="#{detalleSucursal}"
																target="#{diagramacionDiariaController.detalleSucursalView}" />
														</p:commandLink>

														<p:commandLink>
															<h:graphicImage url="/resource/images/delete.gif"
																title="Borrar fila" style="border:0px" />
															<f:setPropertyActionListener value="#{detalleSucursal}"
																target="#{diagramacionDiariaController.detalleSucursalView}" />
															<f:setPropertyActionListener value="#{detalleAsignacion}"
																target="#{diagramacionDiariaController.detalleAsignacionViewToDelete}" />
														</p:commandLink>

													</h:panelGrid>
												</h:panelGrid>
											</p:column>

											<p:column>
												<f:facet name="header">
													<h:outputText value="Código Coto" />
												</f:facet>
												<p:inputText value="#{detalleAsignacion.codigoCoto}" />
											</p:column>

											<p:column>
												<f:facet name="header">
													<h:outputText value="LLegó movil" />
												</f:facet>
												<p:selectBooleanCheckbox
													value="#{detalleAsignacion.llegoMovil}" />
											</p:column>
										</p:dataTable>
									</p:column>

									<f:facet name="footer">
										<p:commandButton value="Actualizar sucursales"
											actionListener="#{diagramacionDiariaController.actualizarSucursales}"
											update="form,filtroForm" oncomplete="tabView.select(0)" />
									</f:facet>
								</p:dataTable>
							</h:panelGrid>
						</p:tab>

						<p:tab title="Novedades">
							<p:panel header="Agregar novedad">
								<h:panelGrid columns="2">
									<h:outputText value="Novedad" />
									<p:inputTextarea id="novedadITA"
										style="width:200px;height:100px;"
										value="#{diagramacionDiariaController.novedad}"
										immediate="true">
										<f:ajax execute="@this" />
									</p:inputTextarea>

									<p:commandButton value="Agregar novedad"
										actionListener="#{diagramacionDiariaController.addNovedad}"
										update="detalleListDT" immediate="true" />
								</h:panelGrid>
							</p:panel>

							<p:dataTable id="detalleListDT" var="novedad"
								value="#{diagramacionDiariaController.novedadDM}"
								emptyMessage="">

								<f:facet name="header">
									<h:outputText value="Novedades" />
								</f:facet>

								<p:column align="center">
									<f:facet name="header">
										<h:outputText value="Novedad" />
									</f:facet>
									<h:outputText value="#{novedad}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Opciones" />
									</f:facet>
									<h:panelGrid columns="3">
										<h:commandLink
											actionListener="#{diagramacionDiariaController.deleteNovedad}"
											immediate="true">
											<h:graphicImage url="/resource/images/delete.gif"
												title="Eliminar" style="border:0px" />
										</h:commandLink>
									</h:panelGrid>
								</p:column>
							</p:dataTable>
						</p:tab>

						<p:tab title="Fletes asignados">

							<h:panelGrid columns="1">
								<p:dataTable id="dataTableSucursalFlete" var="detalleSucursal"
									value="#{diagramacionDiariaController.diagramacionDiariaView.detalleSucursalViewList}"
									emptyMessage="Sin detalles" dynamic="true">
									<f:facet name="header">
										<h:outputText
											value="Número sucursal-Descripción Flete-Agencia Flete-Código Coto" />
									</f:facet>

									<p:column rendered="#{detalleSucursal.fleteAsignado}">
										<p:dataTable id="dataTableSucursalASignacionFlete"
											var="detalleAsignacion"
											value="#{detalleSucursal.detalleAsignacionViewList}"
											paginator="false" emptyMessage="Sin detalles" dynamic="true">

											<p:column headerText="Sucursal" footerText="Sucursal"
												rendered="#{detalleAsignacion.fleteAsignado}">

												<h:outputText id="sucursalOT"
													value="#{detalleSucursal.sucursalCoto.numeroSucursal}">
												</h:outputText>
												<p:tooltip for="sucursalOT" value="Número sucursal" />
											</p:column>

											<p:column headerText="Descripción flete"
												footerText="Sucursal"
												rendered="#{detalleAsignacion.fleteAsignado}">

												<h:outputText id="descripcionFleteOT"
													value="#{detalleAsignacion.descripcionFlete}" />
												<p:tooltip for="descripcionFleteOT"
													value="Descripción flete" />
											</p:column>

											<p:column headerText="Agencia flete" footerText="Sucursal"
												rendered="#{detalleAsignacion.fleteAsignado}">

												<h:outputText id="nombreAgenciaOT"
													value="#{detalleAsignacion.nombreAgenciaFlete}" />
												<p:tooltip for="nombreAgenciaOT"
													value="Nombre de agencia del flete" />
											</p:column>

											<p:column headerText="Código Coto" footerText="Sucursal"
												rendered="#{detalleAsignacion.fleteAsignado}">

												<h:outputText id="codigoCotoOT"
													value="#{detalleAsignacion.codigoCoto}" />
												<p:tooltip for="codigoCotoOT" value="Código Coto" />
											</p:column>
										</p:dataTable>
									</p:column>
								</p:dataTable>
							</h:panelGrid>
						</p:tab>

					</p:tabView>

					<!-- ================================================== -->
					<!-- Opciones											-->
					<!-- ================================================== -->
					<h:panelGrid columns="2">
						<p:commandButton value="Guardar"
							actionListener="#{diagramacionDiariaController.save}"
							update="form,filtroForm">
						</p:commandButton>
						<p:commandButton value="Volver"
							actionListener="#{diagramacionDiariaController.cancel}"
							immediate="true" update="form,filtroForm">
						</p:commandButton>
					</h:panelGrid>
				</h:panelGrid>

				<p:dialog id="movilDialogID" header="Selección móvil"
					widgetVar="movilDialog" resizable="false" width="700" modal="true"
					onCloseUpdate="panel">
					<h:panelGrid id="dialogPanelGrid" columns="4" cellpadding="4">
						<h:outputText value="Móvil" />
						<p:autoComplete id="movilAC"
							disabled="#{diagramacionDiariaController.movilSelected}"
							value="#{diagramacionDiariaController.detalleAsignacionView.movil}"
							completeMethod="#{diagramacionDiariaController.completeMovil}"
							var="movil" itemLabel="#{movil.numeroMovil} - #{movil.patente}"
							itemValue="#{movil}" converter="com.converter.MovilConverter"
							maxResults="10" queryDelay="300" forceSelection="true">
							<p:ajax event="itemSelect"
								listener="#{diagramacionDiariaController.handleMovilSelect}"
								update="movilAC,nombreMovil,deseleccionarMovilLink" />
						</p:autoComplete>
						<h:panelGroup>
							<h:outputText id="nombreMovil"
								value="#{diagramacionDiariaController.detalleAsignacionView.movil.numeroMovil} #{diagramacionDiariaController.detalleAsignacionView.movil.patente}" />
							<p:commandLink id="deseleccionarMovilLink"
								disabled="#{!diagramacionDiariaController.movilSelected}"
								update="movilAC,nombreMovil,deseleccionarMovilLink"
								immediate="true"
								actionListener="#{diagramacionDiariaController.deseleccionarMovil}">
								<h:graphicImage url="/resource/images/delete.gif"
									title="Deseleccionar" style="border:0px" />
							</p:commandLink>
						</h:panelGroup>
						<h:outputText value="" />

						<p:commandButton value="Confirmar"
							actionListener="#{diagramacionDiariaController.seleccionarMovil}"
							update=":form:panel" onclick="movilDialog.hide()" />
						<p:commandButton value="Cancelar" onclick="movilDialog.hide()" />
					</h:panelGrid>
				</p:dialog>

				<p:dialog id="fleteDialogID" header="Selección Flete"
					widgetVar="fleteDialog" resizable="false" width="700" modal="true"
					onCloseUpdate="panel">
					<h:panelGrid columns="2" cellpadding="4">
						<h:outputText value="Descripción" />
						<p:inputText
							value="#{diagramacionDiariaController.detalleAsignacionView.descripcionFlete}" />

						<h:outputText value="Nombre agencia" />
						<p:inputText
							value="#{diagramacionDiariaController.detalleAsignacionView.nombreAgenciaFlete}" />

						<h:outputText value="Horario pedido" />
						<p:calendar id="horarioPedidoFleteC"
							value="#{diagramacionDiariaController.detalleAsignacionView.horarioPedidoFlete}"
							mode="popup" showOn="button" locale="es"
							pattern="#{msgs.common_timeOnly}" timeOnly="true"
							readOnlyInputText="true" stepMinute="30">
						</p:calendar>

						<h:outputText value="Horario salida" />
						<p:calendar id="horarioSalidaC"
							value="#{diagramacionDiariaController.detalleAsignacionView.horarioSalida}"
							mode="popup" showOn="button" locale="es"
							pattern="#{msgs.common_timeOnly}" timeOnly="true"
							readOnlyInputText="true" stepMinute="30">
						</p:calendar>

						<p:commandButton value="Confirmar"
							actionListener="#{diagramacionDiariaController.seleccionarFlete}"
							update="form" onclick="fleteDialog.hide()" />
						<p:commandButton value="Cancelar" onclick="fleteDialog.hide()" />
					</h:panelGrid>
				</p:dialog>
			</h:form>
		</u:define>
	</u:composition>
</body>
</html>